package com.zingrow.web.customer.service;

import java.util.List;

import com.zingrow.common.utils.PageView;
import com.zingrow.web.customer.model.Group;

public interface IGroupService {

	/**
	 * 查询组织
	 * @param gName
	 * @param gBrie
	 * @param pageView
	 * @return
	 */
	List<Group> select(String gName,String gBrie,PageView pageView);
	
	/**
	 * 查询所有组织名称
	 * @return
	 */
	List<Group> selectAllName(String gName);
	
	/**
	 * 新增组织
	 */
	boolean addGroup(Group group);
	
	/**
	 * 删除组织
	 */
	boolean delGroup(Integer groupId);	
	/**
	 * 修改组织
	 */
	boolean updateGroup(Group group);
	
	/**
	 * 查询组织名是否有重复
	 * @param gName 
	 * @param gId  为null时仅根据组织名判断。不为null会检测是否存在除此ID外其他同名(修改时检测)
	 * @return
	 */
	boolean querySameByGroup(String gName, Integer gId);
	
	
	List<Group> selectfidName(String ifmId);
	
	/**
	 * 查询所有组织
	 */
	List<Group> selectAll();
	
	/**
	 *  根据组织id查询下面所有的方案id
	 * @param groupId
	 * @return
	 */
	List<Group> selectgroupid(Integer groupId);
	
	/**
     * 根据组织ID查询组织简称
     */
    String selectGroupBrieByGroupid(Integer groupId);
    /**
     * 根据组织ID查询组织名称
     */
    String selectGroupNameByGroupid(Integer groupId);
    
	/**
	 * 查询该组织栏目字段具体数值 
	 * @param groupId
	 * @return
	 */
	Group selectpossess(Integer groupId);
	
	/**
	 * 判断查询组织可拥有用户数
	 * @param groupId
	 * @return
	 */
	int selectUsernum(Integer groupId);
	
	Group selectgroupName(Integer groupId);
	
	/**
	 * 根据组织ID，修改组织报告权限
	 */
	boolean updateByGroupId(Group group);
	
	Group selectgruopgroupid(Integer groupId);
	
	
}
